Devices used for testing and repairing computing device hardware and software are frequently referred to herein as a “testing device” and the computing device being tested and repaired (if necessary), which is suspected of being dysfunctional, is frequently referred to as a “target device.” While there are many devices for testing and repairing electrical wiring, telephones, telephone cables, television set top boxes, video cables, and the like, in the past, test and repair devices for dysfunctional computing (target) devices have often been the dysfunctional target device itself, or a computing device similar to the dysfunctional target device, running a test program. Instead of the compact, portable tools and toolsets common in other industries, computer repair personnel must usually put together an ad hoc toolkit by gathering whatever cables and connectors they can find and collecting a suite of software tools stored on a removable volume, for example, a compact disc (CD). If the target device, i.e., the dysfunctional computing device, is able to be run, the CD is inserted into the compact disc drive of the target device and/or the target device is connected to an external compact disc drive. If the target device is not able to run, another computing device is connected to the target device and the CD is inserted into the other computing device. Software corruption and damage to the components of the target device is detected by running tests stored on the CD, including scanning the memory of the target device.
In addition to the inconvenience and inconsistency of service inherent in the foregoing approach to testing and repairing computing (target) devices, there is a risk of corrupting the software running on the testing device. Software running on the testing device may be corrupted by malfunctioning software or hardware located on the target device. Hardware located on the target device may malfunction because it is damaged. Software running on the target device may malfunction because it has been accidentally corrupted or because it has been purposely corrupted by malware. Malware is software written and/or distributed with malicious intent to do damage to data and/or software. Examples of malware include, but are not limited to, computer viruses, worms, and Trojan horses. In more extreme cases of malfunctioning hardware components, the target device often does not function well enough to allow testing and scanning to be done. Obviously, if the target device cannot be started, the target device cannot be used as its own testing device and cannot communicate with an external testing device. It does not matter if one hardware component is malfunctioning or if many hardware components are malfunctioning. If there is no way to start the target device, there is no way to determine which hardware components are malfunctioning.
Thus, there exists a need for a testing device for testing the software and hardware of potentially dysfunctional computing devices. Preferably, the testing device should be capable of testing and possibly repairing or replacing the software of a computing (target) device while isolating itself from malware that may be present on the target device. Also, preferably, the testing device should be compact and portable. The present invention is directed to providing such a testing device.